/*文字の基本色*/
.bg_cool {
    background-color: #187fc4;
    color: #fff;
}

.bg_warm {
    background-color: #e45959;
    color: #fff;
}

.bg_other {
    background-color: #008f7e;
    color: #fff;
}

/*PC対応*/
.pc-ls-000 {
    letter-spacing: 0em !important;
}

.pc-ls-003 {
    letter-spacing: -0.03em !important;
}

.pc-ls-005 {
    letter-spacing: -0.05em !important;
}

.pc-ls-006 {
    letter-spacing: -0.06em !important;
}

.pc-ls-008 {
    letter-spacing: -0.08em !important;
}

.pc-ls-010 {
    letter-spacing: -0.1em !important;
}

.pc-ls-013 {
    letter-spacing: -0.13em !important;
}

.pc-ls-018 {
    letter-spacing: -0.18em !important;
}

.pc-mt-5 {
    margin-top: 5px;
}

.pc-width-55 {
    width: 55% !important;
}

.pc-width-45 {
    width: 45% !important;
}

.pc-width-66 {
    width: 66.7% !important;
}

.pc-width-33 {
    width: 33.3% !important;
}

.pc-width-75 {
    width: 75% !important;
}

.pc-width-25 {
    width: 25% !important;
}

.pc-width-80 {
    width: 80% !important;
}

.pc-width-20 {
    width: 20% !important;
}

.pc-width-60 {
    width: 60% !important;
}

.pc-width-40 {
    width: 40% !important;
}

.pc-width-70 {
    width: 70% !important;
}

.pc-width-30 {
    width: 30% !important;
}

.pc-width-90 {
    width: 90% !important;
}

.pc-width-10 {
    width: 10% !important;
}

@media only screen and (max-width: 480px) {
    .pc-width-55 {
        width: auto !important;
    }

    .pc-width-45 {
        width: auto !important;
    }

    .pc-width-66 {
        width: auto !important;
    }

    .pc-width-33 {
        width: auto !important;
    }

    .pc-width-75 {
        width: auto !important;
    }

    .pc-width-25 {
        width: auto !important;
    }

    .pc-width-80 {
        width: auto !important;
    }

    .pc-width-20 {
        width: auto !important;
    }

    .pc-width-60 {
        width: auto !important;
    }

    .pc-width-40 {
        width: auto !important;
    }

    .pc-width-70 {
        width: auto !important;
    }

    .pc-width-30 {
        width: auto !important;
    }

    .pc-width-90 {
        width: auto !important;
    }

    .pc-width-10 {
        width: auto !important;
    }
}

/*SP対応*/
@media only screen and (max-width: 480px) {
    .sp-align-r {
        margin-left: auto;
        margin-right: 0;
    }

    .sp-align-l {
        margin-right: auto;
        margin-left: 0;
    }

    .sp-align-c {
        margin-left: auto;
        margin-right: auto;
    }

    .sp-talign-c {
        text-align: center;
    }

    .sp-talign-l {
        text-align: left;
    }

    .sp-talign-r {
        text-align: right;
    }

    .sp-width-10 {
        width: 10% !important;
    }

    .sp-width-20 {
        width: 20% !important;
    }

    .sp-width-25 {
        width: 25% !important;
    }

    .sp-width-30 {
        width: 30% !important;
    }

    .sp-width-40 {
        width: 40% !important;
    }

    .sp-width-50 {
        width: 50% !important;
    }

    .sp-width-60 {
        width: 60% !important;
    }

    .sp-width-70 {
        width: 70% !important;
    }

    .sp-width-80 {
        width: 80% !important;
    }

    .sp-width-90 {
        width: 90% !important;
    }

    .sp-width-100 {
        width: 100% !important;
    }

    .sp-width-110 {
        width: 110% !important;
    }

    .sp-width-120 {
        width: 120% !important;
    }

    .sp-mauto {
        margin: auto;
    }

    .sp-ma-0 {
        margin: 0 0 0 0;
    }

    .sp-mb-0 {
        margin-bottom: 0px !important;
    }

    .sp-mb-5 {
        margin-bottom: 5px !important;
    }

    .sp-mb-10 {
        margin-bottom: 10px !important;
    }

    .sp-mb-15 {
        margin-bottom: 15px !important;
    }

    .sp-mb-20 {
        margin-bottom: 20px !important;
    }

    .sp-mb-30 {
        margin-bottom: 30px !important;
    }

    .sp-mb-40 {
        margin-bottom: 40px !important;
    }

    .sp-mb-50 {
        margin-bottom: 50px !important;
    }

    .sp-mt-0 {
        margin-top: 0px !important;
    }

    .sp-mt-5 {
        margin-top: 5px !important;
    }

    .sp-mt-10 {
        margin-top: 10px !important;
    }

    .sp-mt-15 {
        margin-top: 15px !important;
    }

    .sp-mt-20 {
        margin-top: 20px !important;
    }

    .sp-mt-30 {
        margin-top: 30px !important;
    }

    .sp-mt-40 {
        margin-top: 40px !important;
    }

    .sp-mt-50 {
        margin-top: 50px !important;
    }

    .sp-mr-0 {
        margin-right: 0px !important;
    }

    .sp-mr-5 {
        margin-right: 5px !important;
    }

    .sp-mr-10 {
        margin-right: 10px !important;
    }

    .sp-mr-20 {
        margin-right: 20px !important;
    }

    .sp-mr-30 {
        margin-right: 30px !important;
    }

    .sp-mr-40 {
        margin-right: 40px !important
    }

    .sp-mr-50 {
        margin-right: 50px !important;
    }

    .sp-ml-0 {
        margin-left: 0px !important;
    }

    .sp-ml-5 {
        margin-left: 5px !important;
    }

    .sp-ml-10 {
        margin-left: 10px !important;
    }

    .sp-ml-20 {
        margin-left: 20px !important;
    }

    .sp-ml-30 {
        margin-left: 30px !important;
    }

    .sp-ml-40 {
        margin-left: 40px !important;
    }

    .sp-ml-50 {
        margin-left: 50px !important;
    }

    .sp-pa-0 {
        padding: 0;
    }

    .sp-pa-5 {
        padding: 5px;
    }

    .sp-pb-0 {
        padding-bottom: 0px !important;
    }

    .sp-pb-5 {
        padding-bottom: 5px !important;
    }

    .sp-pb-10 {
        padding-bottom: 10px !important;
    }

    .sp-pb-15 {
        padding-bottom: 15px !important;
    }

    .sp-pb-20 {
        padding-bottom: 20px !important;
    }

    .sp-pb-30 {
        padding-bottom: 30px !important;
    }

    .sp-pb-40 {
        padding-bottom: 40px !important;
    }

    .sp-pb-50 {
        padding-bottom: 50px !important;
    }

    .sp-pt-0 {
        padding-top: 0px !important;
    }

    .sp-pt-5 {
        padding-top: 5px !important;
    }

    .sp-pt-10 {
        padding-top: 10px !important;
    }

    .sp-pt-15 {
        padding-top: 15px !important;
    }

    .sp-pt-20 {
        padding-top: 20px !important;
    }

    .sp-pt-30 {
        padding-top: 30px !important;
    }

    .sp-pt-40 {
        padding-top: 40px !important;
    }

    .sp-pt-50 {
        padding-top: 50px !important;
    }

    .sp-pr-0 {
        padding-right: 0px !important;
    }

    .sp-pr-5 {
        padding-right: 5px !important;
    }

    .sp-pr-10 {
        padding-right: 10px !important;
    }

    .sp-pr-15 {
        padding-right: 15px !important;
    }

    .sp-pr-20 {
        padding-right: 20px !important;
    }

    .sp-pr-30 {
        padding-right: 30px !important;
    }

    .sp-pr-40 {
        padding-right: 40px !important;
    }

    .sp-pr-50 {
        padding-right: 50px !important;
    }

    .sp-pl-0 {
        padding-left: 0px !important;
    }

    .sp-pl-5 {
        padding-left: 5px !important;
    }

    .sp-pl-10 {
        padding-left: 10px !important;
    }

    .sp-pl-15 {
        padding-left: 15px !important;
    }

    .sp-pl-20 {
        padding-left: 20px !important;
    }

    .sp-pl-30 {
        padding-left: 30px !important;
    }

    .sp-pl-40 {
        padding-left: 40px !important;
    }

    .sp-pl-50 {
        padding-left: 50px !important;
    }

    .sp-h3-img-2w {
        width: 70px;
    }

    .sp-h3-img-3w {
        width: 83px;
    }

    .sp-h3-img-4w {
        width: 105px;
    }

    .sp-h3-img-8w {
        width: 160px;
    }

    .sp-ls-003 {
        letter-spacing: -0.03em !important;
    }

    .sp-ls-004 {
        letter-spacing: -0.04em !important;
    }

    .sp-ls-005 {
        letter-spacing: -0.05em !important;
    }

    .sp-ls-006 {
        letter-spacing: -0.06em !important;
    }

    .sp-ls-007 {
        letter-spacing: -0.07em !important;
    }

    .sp-ls-008 {
        letter-spacing: -0.08em !important;
    }

    .sp-ls-009 {
        letter-spacing: -0.09em !important;
    }

    .sp-ls-010 {
        letter-spacing: -0.10em !important;
    }

    .sp-ls-011 {
        letter-spacing: -0.11em !important;
    }

    .sp-ls-012 {
        letter-spacing: -0.12em !important;
    }

    .sp-ls-013 {
        letter-spacing: -0.13em !important;
    }

    .sp-ls-014 {
        letter-spacing: -0.14em !important;
    }

    .sp-ls-015 {
        letter-spacing: -0.15em !important;
    }

    .sp-ls-020 {
        letter-spacing: -0.2em !important;
    }
}

/*改行の処理*/
@media only screen and (max-width: 768px) {
    .tab_none {
        display: none;
    }

    .g-main br {
        display: none;
    }

    .g-main br.tabbr {
        display: block;
    }

    .sp-br br {
        display: inherit !important;
    }
}

.sp-br-sp br {
    display: none;
}

@media only screen and (max-width: 480px) {
    .sp-br-sp br {
        display: inherit !important;
    }
}

@media only screen and (max-width: 768px) {
    .tb-br br {
        display: inherit !important;
    }

    .sp-br-sp br {
        display: none;
    }
}

.tb-br-tb br {
    display: none;
}

@media only screen and (max-width: 768px) {
    .tb-br-tb br {
        display: inherit !important;
    }
}

/*罫線の処理*/
.sp-noborder-l {
    border-right: 1px solid #ccc;
}

.sp-noborder-2 {
    border-right: 1px dotted #fff;
}

.sp-noborder-3 {
    border-right: solid 2px #000;
}

.sp-noborder-4 {
    border-right: groove 2px #b7b7b7;
}

@media only screen and (max-width: 480px) {
    .sp-noborder-l {
        border-right: none !important;
    }

    .sp-noborder-2 {
        border-right: none !important;
    }

    .sp-noborder-3 {
        border-right: none !important;
    }

    .sp-noborder-4 {
        border-right: none !important;
    }
}

.sp-border-l-no {
    border-left: solid 1px #ccc;
}

@media only screen and (max-width: 480px) {
    .sp-border-l-no {
        border-left: none;
    }
}

/*スペックリスト*/
#RAspecList .g-btn {
    width: 100%;
    border: 1px solid #ccc;
}

#RAspecList .g-btn:before {
    display: none;
}

#RAspecList .models {
    margin: 0 -10px -10px 0;
    overflow: hidden;
    font-size: 18px;
    font-weight: bold;
}

#RAspecList .models_el {
    margin: 0 10px 10px 0;
    float: left;
    width: 110px;
}

#RAspecList .g-slider_nav {
    position: absolute;
    margin-top: 0;
    top: 3px;
    z-index: 11;
}

#RAspecList .g-slider_prev {
    left: 0;
}

#RAspecList .g-slider_next {
    right: 0;
}

#RAspecList .close_botton {
    border: none;
    background-color: #f3f3f3;
}

#RAspecList table {
    border-spacing: 0;
    -ms-writing-mode: tb-lr;
    writing-mode: vertical-lr;
    text-orientation: upright;
}

#RAspecList tr {
    position: relative;
}

#RAspecList .g-modal_close {
    position: absolute;
    top: 17px;
    right: 0;
}

#RAspecList .g-modal_btn {
    width: 26px;
    height: 26px;
}

#RAspecList th {
    padding: 6px 4px;
    border: 1px solid #fff;
    border-bottom: none;
    line-height: 1;
    width: auto;
    position: sticky;
    z-index: 8;
    top: 0;
    left: 0;
    min-height: 3em;
    background-color: #ccc;
    writing-mode: horizontal-tb;
    font-size: 14px;
    font-weight: normal;
}

#RAspecList td {
    padding: 6px 4px;
    border: 1px solid #ccc;
    border-bottom: none;
    border-left: none;
    background-color: #fff;
    line-height: 1;
    min-height: 3em;
    width: 10em;
    text-align: center;
    writing-mode: horizontal-tb;
    word-break: break-all;
}

#RAspecList td>span,
#RAspecList th>span {
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
}

@media only screen and (max-width: 480px) {
    #RAspecList .g-slider_nav {
        top: 49px;
    }

    #RAspecList .g-modal_close {
        top: 16px;
        right: 0;
    }

    #RAspecList th>span {
        white-space: nowrap;
    }

    #RAspecList br {
        display: block;
    }

    _::-webkit-full-page-media,
    _:future,
    :root #RAspecList .close_botton {
        display: none;
    }

    _::-webkit-full-page-media,
    _:future,
    :root #RAspecList td {
        min-height: 5em;
    }

    _::-webkit-full-page-media,
    _:future,
    :root #RAspecList td {
        min-height: 5em;
    }

    _::-webkit-full-page-media,
    _:future,
    :root #RAspecList .g-slider_nav {
        top: 0;
    }
}

/*H2見出し*/
@media only screen and (max-width: 480px) {
    .h2_title_rx {
        position: absolute;
        top: 0;
        left: 0;
    }

    .h2_image_rx {
        padding-top: 63px;
    }

    .h2_image {
        position: relative;
    }

    .h2_title {
        position: absolute;
        top: -4px;
        left: 0;
        margin-bottom: -40px;
        z-index: 2;
    }

    .h2_title .g-ttl-2,
    .h2_title p {
        font-size: 18px;
    }

    .h2_title p {
        line-height: 140%;
    }
}

/*positionの処理*/
.relative {
    position: relative;
}

.absolute {
    position: absolute;
}

@media only screen and (max-width: 480px) {
    .sp-no-relative {
        position: static !important;
    }

    .sp-no-absolute {
        position: static !important;
    }

    .sp-no-border-l {
        border-left: none;
    }
}

/*その他*/
.ia-maxw100{max-width:100px;}

@media (max-width: 959px) {
  body.g-page-dept:not(.ac_large-contents) .g-lnav+.g-main {
      padding-top: 50px;
  }
}